/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package protegido;

import com.opensymphony.xwork2.ActionSupport;
import constantes.FonolConstantes;
import fonol.entidades.Beneficiarios;
import fonol.entidades.Delegados;
import fonol.entidades.Proyectos;
import java.util.List;
import java.util.Map;
import java.util.logging.Logger;
import org.apache.struts2.interceptor.SessionAware;
import protegido.util.ProtegidoUtil;

/**
 *
 * @author fredfred2
 */
public class VerProyectos extends ActionSupport implements SessionAware{
    
    private Beneficiarios beneficiario;
    private List<Proyectos> proyectos;
    private Delegados delegado;
    Map session;

    void logea(String m){
        Logger log=Logger.getLogger(VerProyectos.class.getName());
        log.info(m);
    }
    
    @Override
    public String execute(){
        logea("VerProyectos.beneficiario:"+getBeneficiario());
        setProyectos(getProyectos());
        setDelegado(getDelegado());
        logea("VerProyectos.delegado:"+getDelegado());
        logea("VerProyectos.proyectos:"+getProyectos());
        return SUCCESS;
    }

    public Beneficiarios getBeneficiario() {
        return beneficiario;
    }

    public void setBeneficiario(Beneficiarios beneficiario) {
        this.beneficiario = beneficiario;
    }

    public List<Proyectos> getProyectos() {
        return new ProtegidoUtil().getProyectosPorBeneficiario(getBeneficiario());
    }

    public void setProyectos(List<Proyectos> proyectos) {
        this.proyectos = proyectos;
    }

    public Delegados getDelegado() {
        Object o;
        o=session.get(FonolConstantes.OBJETO_USER);
        logea("Objeto:"+o);
        if(o instanceof Delegados)
            return (Delegados)o ;
        else
            return null;
    }

    public void setDelegado(Delegados delegado) {
        this.delegado = delegado;
    }

    public void setSession(Map arg0) {
        session=arg0;
    }
    
}
